package com.qili.entity.supplier;

import com.qili.annotation.Mean;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.stereotype.Component;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;

/**
 * supplier_project
 * @author
 */
@Table(name = "supplier_project")
@Data
@ToString
@EqualsAndHashCode
@Component
public class SupplierProject implements Serializable {
    /**
     * 项目Id
     */
    @Id
    @Column(name = "sup_project_id")
    private String supProjectId;

    /**
     * 项目名称 001 已保存 002 待审核 003 已驳回 004 已结束 005 已撤销  006 已发布
     */
    @Mean(value = "项目名称")
    @Column(name = "project_name")
    private String projectName;

    @Column(name = "status")
    private String status;

    /**
     * 创建时间
     */
    @Column(name = "create_date")
    private String createDate;

    /**
     * 创建人
     */
    @Column(name = "create_by")
    private String createBy;

    /**
     * 项目类型
     */
    @Mean(value = "项目类型")
    @Column(name = "project_type")
    private String projectType;

    /**
     * 发布单位
     */

    @Column(name = "publish_company")
    private String publishCompany;

    /**
     * 发布人
     */
    @Column(name = "publish_by")
    private String publishBy;

    /**
     * 联系电话
     */
    @Mean(value = "联系电话")
    @Column(name = "link_tel")
    private String linkTel;

    /**
     * 项目建设总投资额
     */
    @Mean(value = "项目建设总投资额")
    @Column(name = "tz_money")
    private String tzMoney;

    /**
     * 合同金额
     */
    @Mean(value = "合同金额")
    @Column(name = "ht_money")
    private String htMoney;

    /**
     * 监理服务费
     */
    @Mean(value = "监理服务费")
    @Column(name = "jl_fw_money")
    private String jlFwMoney;

    /**
     * 监理实施费用
     */
    @Mean(value = "监理实施费用")
    @Column(name = "jl_ss_money")
    private String jlSsMoney;

    /**
     * 咨询服务费用
     */
    @Mean(value = "咨询服务费用")
    @Column(name = "zx_fw_money")
    private String zxFwMoney;

    /**
     * 咨询实施费用
     */
    @Mean(value = "咨询实施费用")
    @Column(name = "zx_ss_money")
    private String zxSsMoney;

    /**
     * 检测实施费用
     */
    @Mean(value = "检测实施费用")
    @Column(name = "jc_ss_money")
    private String jcSsMoney;

    /**
     * 检测服务费用
     */
    @Mean(value = "检测服务费用")
    @Column(name = "jc_fw_money")
    private String jcFwMoney;

    /**
     * 其他服务费用
     */
    @Mean(value = "其他服务费用")
    @Column(name = "qt_fw_money")
    private String qtFwMoney;

    /**
     * 其他实施费用
     */
    @Mean(value = "其他实施费用")
    @Column(name = "qt_ss_money")
    private String qtSsMoney;

    /**
     * 总工期开始时间
     */
    @Mean(value = "总工期开始时间")
    @Column(name = "gq_begin_date")
    private String gqBeginDate;

    /**
     * 工期结束时间
     */
    @Mean(value = "工期结束时间")
    @Column(name = "gq_end_date")
    private String gqEndDate;

    /**
     * 招标截止时间
     */
    @Mean(value = "招标截止时间")
    @Column(name = "zb_end_date")
    private String zbEndDate;

    /**
     * 合同签订地
     */
    @Mean(value = "合同签订地（省）")
    @Column(name = "ht_sign_province")
    private String htSignProvince;

    /**
     * 合同签订市
     */
    @Mean(value = "合同签订地点（市）")
    @Column(name = "ht_sign_city")
    private String htSignCity;

    /**
     * 合同签订县
     */
    @Mean(value = "合同签订地点（县）")
    @Column(name = "ht_sign_county")
    private String htSignCounty;

    /**
     * 行业类型
     */
    @Mean(value = "行业类型")
    @Column(name = "hy_type")
    private String hyType;

    /**
     * 是否需要投标
     */
    @Mean(value = "是否需要投标")
    @Column(name = "need_zb")
    private String needZb;

    /**
     * 是否已投标
     */
    @Mean(value = "是否已投标")
    @Column(name = "is_zb")
    private String isZb;

    /**
     * 是否已签订合同
     */
    @Mean(value = "是否已签订合同")
    @Column(name = "qd_ht")
    private String qdHt;

    /**
     * 是否有首付款
     */
    @Mean(value = "是否有首付款")
    @Column(name = "is_sfk")
    private String isSfk;

    /**
     * 合同签订时间
     */
    @Mean(value = "合同签订时间")
    @Column(name = "ht_sign_date")
    private String htSignDate;

    /**
     * 其他需求
     */
    @Mean(value = "其他需求")
    @Column(name = "other_xq")
    private String otherXq;

    /**
     * 主要负责人性别
     */
    @Mean(value = "主要负责人性别")
    @Column(name = "main_fz_sex")
    private String mainFzSex;

    /**
     * 主要负责人学历
     */
    @Mean(value = "主要负责人学历")
    @Column(name = "main_fz_xl")
    private String mainFzXl;

    /**
     * 主要负责人--擅长领域
     */
    @Mean(value = "主要负责人（擅长领域）")
    @Column(name = "main_fz_field")
    private String mainFzField;

    /**
     * 需要出差
     */
    @Mean(value = "需要出差")
    @Column(name = "main_fz_trip")
    private String mainFzTrip;

    /**
     * 主要负责人备注
     */
    @Mean(value = "主要负责人备注")
    @Column(name = "main_fz_remark")
    private String mainFzRemark;

    /**
     * 需改人
     */

    @Column(name = "modify_by")
    private String modifyBy;

    /**
     * 修改时间
     */
    @Column(name = "modify_date")
    private String modifyDate;

    /**
     * 发布时间
     */
    @Column(name = "publish_date")
    private String publishDate;

    /**
     * 发布类型 001 正中内部发布  002 外部发布
     */
    @Column(name = "publish_type")
    private String publishType;


    /**
     * 提交人
     */
    @Column(name = "commit_By")
    private String commitBy;



    /**
     * 提交人
     */
    @Column(name = "commit_date")
    private String commitDate;


    /**
     * 审核人
     */
    @Column(name = "check_By")
    private String checkBy;

    /**
     * 审核时间
     */
    @Column(name = "check_date")
    private String checkDate;
    /**
     * 审核意见
     */
    @Column(name = "check_remark")
    private String checkRemark;

    /**
     * 审核状态
     */
    @Column(name = "check_status")
    private String checkStatus;


    /**
     *是否对外公开
     */
    @Mean(value = "是否对外公开")
    @Column(name = "is_gk")
    private String isGk;

    /**
     *招标文件说明文件 是否完成
     */
    @Column(name = "zbsm_finish")
    private String zbsmFinish;

    /**
     *项目招标文件 是否完成
     */
    @Column(name = "zb_finish")
    private String zbFinish;
    /**
     *项目投标文件是否完成
     */
    @Column(name = "tb_finish")
    private String tbFinish;
    /**
     *上传合同是否完成
     */
    @Column(name = "ht_finish")
    private String htFinish;

    /**
     *上传合同说明文件  是否完成
     */
    @Column(name = "htsm_finish")
    private String htsmFinish;

    /**
     *中标状态
     */
    @Column(name = "zb_status")
    private String zbStatus;


    /**
     *中标公司
     */
    @Column(name = "zb_company")
    private String zbCompany;

    /**
     *中标时间
     */
    @Column(name = "zb_date")
    private String zbDate;

    /**
     * company_id 保存形式   中标 001 （保存公司Id） 002 保存（应接人的Id）
     */
    @Column(name = "zb_com_type")
    private String zbComType;


    /**
     * 中标人
     */
    @Column(name = "zb_by")
    private String zbBy;

    /**
     *是否公示
     */
    @Column(name = "is_gs")
    private String isGs;

    /**
     * company_id 保存形式   发布 001 （保存公司Id） 002 保存（应接人的Id）
     */
    @Column(name = "pub_com_type")
    private String pubComType;
    /**
     *变更时间
     */
    @Column(name = "change_date")
    private String changeDate;

    /**
     * 合同预计上传天数
     */
    @Column(name = "contract_days")
    private String contractDays;

    /**
     * 天数填写日期
     */
    @Column(name = "contract_date")
    private String contractDate;

    /**
     * 是否进入议价环节
     */
    @Column(name = "yj_status")
    private String yjStatus;


    /**
     * 议价次数  最多比价三次
     */
    @Column(name = "yj_num")
    private Integer yjNum;

    /**z
     * 议价时间
     */
    @Column(name = "yj_date")
    private String  yjDate;

    /**
     * 参与议价供方
     */
    @Column(name = "yj_person")
    private String  yjPerson;
    /**
     * 推荐中标人状态  0 系统未推荐过 1  系统已经推荐过（不在推荐发消息提醒）
     */
    @Column(name = "tj_status")
    private String  tjStatus;
    /**
     * 推荐中标人时间--- x天不确认 则按照推荐中标人处理
     */
    @Column(name = "tj_date")
    private String  tjDate;
    /**
     * 推荐中标人
     */

    @Column(name = "tj_person")
    private String  tjPerson;
    /**
     * 是否增加过实施费比例Y
     */
    @Column(name = "is_addFy")
    private String  isAddFy;

    /**
     * 实施比例  内部单位无人应接 比例增加(记录最新的实施费比例)
     */
    @Column(name = "ssbl")
    private String  ssbl;

    /**
     * 实施比例  修改时间
     */
    @Column(name = "ssbl_date")
    private String  ssblDate;
    /**
     * 系统推荐是否确认 0 未确认 1 已确认
     */
    @Column(name = "is_confirm")
    private String  isConfirm;

    //0a--------------------------


    @Column(name = "oa_id")
    private String  oaId;

    /**
     *  合同编号
     */
    @Mean(value = "合同编号")
    @Column(name = "contract_no")
    private String contractNo;

    /*监理合同名称*/
    @Column(name = "jl_ht_name")
    private String jlHtName;

    /*采购项目编号*/
    @Mean(value = "采购项目编号")
    @Column(name = "pay_or_project_no")
    private String payOrProjectNo;

    /*监理形式*/
    @Column(name = "check_shape")
    private String checkShape;

    /*业主单位名称*/
    @Mean(value = "客户名称")
    @Column(name = "ower_company")
    private String owerCompany;
    /*业主单位的项目负责人１*/
    @Mean(value = "客户联系人")
    @Column(name = "project_leader")
    private String projectLeader;
    /*业主单位的项目负责人１职务*/
    @Mean(value = "联系人职务")
    @Column(name = "duty")
    private String duty;
    /*工期*/
    @Column(name = "gq")
    private String gq;

    // 文件存储的文件夹
    @Column(name = "zskurl")
    private String zskurl;


    //  序号 用来生成文件夹的序号
    @Column(name = "order_num")
    private String orderNum;

    //天数x天无人应接  自动涨费用
    @Mean(value = "天数x天无人应接")
    @Column(name = "days")
    private String days;

    //天数   公示天数
    @Mean(value = "公示天数")
    @Column(name = "gs_days")
    private String gsDays;

    //  工期 多少月
    @Mean(value = "工期")
    @Column(name = "gq_req")
    private String gqReq;

    //内部合同编号
    @Mean(value = "内部合同编号")
    @Column(name = "inside_contract_no")
    private String insideContractNo;

    //中标信息查询网址
    @Mean(value = "中标信息查询网址")
    @Column(name = "query_web")
    private String queryWeb;

    //项目归属
    @Mean(value = "项目归属")
    @Column(name = "project_owner")
    private String projectOwner;

    // 推荐驳回意见
    @Column(name = "remark")
    private String remark;

    /**
     * 项目范围
     */
    @Column(name = "project_scope")
    private String projectScope;

    /**
     * 监理方式
     */
    @Column(name = "supervisor_way")
    private String supervisorWay;

    /**
     * 付款条件
     */
    @Column(name = "payment_clause")
    private String paymentClause;

    /**
     * 口头承诺
     */
    @Column(name = "ktcn")
    private String ktcn;

    /**
     * 沟通人数
     */
    @Column(name = "rsgt")
    private String rsgt;

    /**
     * 约定预计进场时间(年月日)
     */
    @Column(name = "ydyjjc_time")
    private String ydyjjcTime;

    /**
     * 客户联系人电话
     */
    @Column(name = "khlxr_phone")
    private String khlxrPhone;

    /**
     * 客户联系人邮箱
     */
    @Column(name = "khlxr_email")
    private String khlxrEmail;

    /**
     * 引见时间（年月日）
     */
    @Column(name = "yj_time")
    private String yjTime;

    /**
     * 质保期
     */
    @Column(name = "zbq")
    private String zbq;

    /**
     * 项目预算
     */
    @Column(name = "project_ys")
    private String projectYs;







    private static final long serialVersionUID = 1L;
}
